Bandwidth allocation in ad hoc networks

ABSTRACT

A potentially interfering node updatable database associated with the MAC, in each node, contains a limited number of unique identification numbers (UNIDs) referring to nodes likely to interfere with the transmission of the node. Typically these UNIDs are one or two hop neighbors. In addition to the actual nodes, the database also contains unique ID numbers of dummy nodes. Practically, the node database does not distinguish between real or dummy nodes. Selecting a certain node to transmit at a certain TS is brought about by a “which node is to transmit in the next TS” (WINIT) function. This function takes into account all the UNIDs available in the UNID databases of the different nodes. When the WINIT selects a specific UNID to be active in the upcoming TS, the relevant MAC element in the respective node, invokes the transmission.

FIELD OF THE INVENTION

The present invention is in the field of communications networks. Morespecifically the invention relates to bandwidth restricted wireless adhoc networks.

BACKGROUND OF THE INVENTION

The open system Interconnection (OSI) reference model of acommunications network includes a data link control layer which controlsthe sharing of the network among the physical end-points. The data linkcontrol layer is subdivided into two sub-layers, the logical linkcontrol (LLC) sub-layer and the media access control (MAC) sub-layer.The MAC sub-layer uses a unique address to identify each node(end-point) in the system in order to share the network among the entiredifferent end-points of the network. In mobile and ad hoc wirelessnetworks, (MANETs) as well as sensor networks, there is no dedicated orcentral node that organizes the channel in general and the access to thechannel in particular. The MAC system in such networks has to minimizecollision phenomena, i.e. the transmission of packets by different nodesso that none of the receiving nodes receives more than one packet at atime, with loss of data. This discussed by R. Rozovsky and P. R. Kumar,“Seedex: a MAC protocol for ad hoc networks”, The ACM InternationalSymposium on Mobile Ad Hoc Networking and Computing, pp. 67-75, 2001 thecontents of which are incorporated herein by reference. Anotherrequirement from such MAC systems is that they support broadcastmessages (i.e., one-to-many), and be quality of service (QoS) aware,such as by providing delay guarantee, as discussed by V. R. Syrotiuk,Charles J. Colbourn and Alan C. H. Ling, “Topology-TransparentScheduling for MANETs using Orthogonal Arrays”, DIAL-M/POMC 2003: SanDiego, Calif., USA, pp 43-49, 2003, the contents of which areincorporated herein by reference.

An ad hoc wireless communications network is a wireless network havingno central organizing node or a pre-defined infrastructure. Usually, allthe participating nodes are to make decisions and all nodes within therange of a transmitting node receive packets from aforementioned node.Typically, the invention is implemented in ad hoc wireless networks inwhich each node is unaware of the total network topology; rather itutilizes for each node the local topology. Therefore, in the context ofthe environment in which the present invention is implemented even asnodes are referred to as interacting in the network, in fact only atopologically defined fraction of the network which is relevant for eachnode. Such a network was presented by L. Bao and J. J.Garcia-Luna-Aceves, “Distributed Dynamic Channel Access Scheduling forad hoc Networks”, Journal of Parallel and Distributed Computing, Volume63, pp. 3-14, January 2003, the contents of which are incorporatedherein by reference. In such a network, the MAC system is alsodistributed among some or all of the participating nodes. In a wirelesscommunications channel of the invention, the distribution mode of timeslots S₁ . . . S_(n) is known to the various nodes. The slots areavailable to Mynode in compliance with rules, some of which will bediscussed below. A set of nodes (end-points), optionally mobile inspace, are listed in Mynode's node database. Each such node if definedas potential interfering node is potentially capable of sending amessage, at any slot along the time axis and such a message may collidewith Mynode's message if it is sent at the same time. In the networkdiscussed hereinbefore, other nodes are possibly participating, whichare not listed in Mynode's node database and are therefore notconsidered as potential interfering nodes. Mynode's MAC element invokesa slot scheduler, such that only one of the nodes listed Mynode's nodedata base can send a message to the contemporary slot. The number ofnodes stored in Mynode's node database may be dynamic, but every nodepossesses a unique ID.

The environment in which the present invention is implemented is that ofan ad hoc communications network using one or more single time-slottedchannels in which the nodes are dynamically allocated shares of theavailable bandwidth in one channel. The invention relates to service inwhich the messages sent by the nodes are broadcast messages, meaningthat a packet sent by a node can be potentially received by all its nodeneighbors. Each node uses an omni-directional antenna capable ofpotentially interconnecting with all its node neighbors. Due tobandwidth limitations, the available bandwidth is shared between nodesin correlation with the bandwidth demand of each node. The averagetime-slot (TS) rate that a node demands for transmission is referred toas TS refresh rate. A node with a high TS refresh rate demands morebandwidth from the available bandwidth than a node with a lower refreshrate. An example for such nodes bandwidth sharing is described asfollows. In a road traffic control system, Myvehicle updates its ownvehicle database in order to avoid road accidents. The other vehiclespotentially capable of intercepting Myvehicle send position messages infrequency correlated with their velocity. The faster a vehicle travelsthe more frequent the update signal is sent to the potentiallysusceptible vehicle.

Typically the service implements a multi-hop routing. Unlike some ad hoccommunications systems using one hop or two hop routing, the network ofthe present invention is not restricted to two hop routing and three oreven higher hop levels can be implemented. In all hop levels, the systemis to prevent or minimize collision phenomena in broadcast messages,i.e. the transmitting of packets by different nodes so that receivingnodes do not receive more than one packet at once from differentsenders, causing loss of data. To more elaborately explain the access ofnode to time slots in a channel, reference is made to FIG. 1 whichdescribes a slot selecting system as known in the art. Time slottedwireless communications channel 20 has time slots (TSs) S₁ . . . S_(n).Time slot characteristics and distribution along the time axis are knownto all nodes. The TSs are available to any node in compliance with therules governing the access to the slots, some of which will be discussedbelow. The distribution of nodes in space may be randomized and dynamic,affecting the connectivity of the nodes with Mynode and with othernodes. A node database in Mynode contains the list of the IDs of nodeswhich are likely to inter-collide in slots of the channel. For example,in U.S. Pat. No. 5,396,644, the contents of which are incorporatedherewith by reference, a node stores data of its near neighbours and theneighbours of each neighbour (two-hop neighbours), and whenever it sendsa neighbour update signal, it sends also a list of near neighbours. Thisway, each node is always kept updated as of the list of neighbours andthe neighbours of each neighbour. This provides ground for a two-hoprouting level capability. Generally the node ID database is responsiblefor optional functional disappearance or reappearance or appearance ofnodes. The function for selecting a certain node to transmit at acertain TS considers all the node databases of all nodes which arelikely to inter-collide in slots of the channel. The communicationnetwork, before each upcoming TS invokes the selection function thatdetermines which is the one node to transmit in the upcoming TS. Thefunction is referred to hereinafter as a “which node is to transmit inthe next TS” (WINIT). The function takes into account all the IDavailable in the node databases of the different nodes associated withthe node DB in each node and the WINIT function is activated in eachnode and for all time slots.

Othernode 30 which is one of the candidates for transmitting in timeslot 32, will send packets at time slot 32 only when WINIT function 34of the local MAC element 36 of othernode 30 orders it to do so. TheWINIT, a function of the MAC, receives the actual time (i.e. time slotnumber) and the list nodes which are likely to inter-collide in slots ofthe channel. All the nodes activate their slot scheduler, but only onewill transmit at the current time slot. Thus, in time slot 40 Mynode 42is active sending a packet. MAC element 44 of Mynode invokes mynodeWINIT 46. Whereas all the other nodes listed in Mynode's database 48,some or all of which request to transmit at that time slot, remain mutewith respect to TS 40.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic description of the slot selecting system as knownin the art;

FIG. 2 is a schematic description of the system in accordance with thepresent invention, explaining the role of the unique node identificationnumber (UNID);

FIG. 3A is a schematic description explaining dummy nodes conceptillustrating virtual nodes.

FIG. 3B is a schematic description of UNID assignments to nodes.

FIG. 4 is a schematic description explaining a specific negotiationmechanism for trading dummy UNIDs;

FIG. 5 is a schematic representation of an exemplary UNID DB in Mynode.

DETAILED DESCRIPTION OF THE PRESENT INVENTION

In accordance with the present invention, a potentially interfering nodeupdatable database associated with the MAC, in each node, contains alimited number of unique identification numbers (UNIDs) referring tonodes likely to interfere with the transmission of the node. Typicallythese UNIDs are one or two hop neighbours. In addition to the actualnodes, the database also contains unique ID numbers of dummy nodes theuse of which is explained below. Practically, the node database does notdistinguish between real or dummy nodes. Selecting a certain node totransmit at a certain TS is brought about by a WINIT function describedabove. This function takes into account all the UNIDs available in theUNID databases of the different nodes. When the WINIT selects a specificUNID to be active in the upcoming TS, the relevant MAC element in therespective node, invokes the transmission. Herein the specification andclaims, the terms dummy UNID (or dummy UNIDs) may be usedinterchangeably with dummy node (or dummy nodes), as UNIDs are numbersin the database that identify (refer to) dummy nodes.

A schematic description of the system in which the invention isimplemented is provided in FIG. 2 to which reference is now made.Communications channel 20 employs time slots as explained above. Localnode MAC element 50 of node 52 has an associated database periodicallyreceiving updates of the unique node identification number (UNID) as tothe number and identity of the UNIDs listed in UNID database 54. In TS32, WINIT function 50 invokes Othernode 52 to transmit in TS 32, throughtransmitter 56, whereas no other candidate, such as node 58 will do inTS 32. Later on, for example, in TS 40, node 58 transmits packets,rather than the other candidates, such as node 52. This is realized onlyif in the UNID database of node 58, an UNID exists, assigned to node 58,which is selected to do so, by a general system function.

From the WINIT function point of view, assigned UNID of every noderepresents nodes in space but actually some of those “nodes” are dummynodes, i.e part or all of the nodes have more then one assigned UNID. Anexample explaining the dummy nodes concept is described In FIGS. 3A-B towhich reference is now made. In FIG. 3A, Mynode 90 has 3 listed realUNIDS in its database, i.e. UNID 92, 94 and 96, each having a unique IDnumber and therefore a unique MAC address. Mynode has also a unique MACaddress. In its UNID database Mynode also has three dummy UNIDs, i.eUNID 98, 100 and 102, each having a unique MAC address. Functionally, inthis example, two dummy UNIDs are assigned to Mynode 90. As demonstratedin FIG. 3B, node 90 now has three different IDs assigned. Using suchUNID assignment each node receives part of the available channelbandwidth in proportion to the ratio between total UNIDs assigned to thenode plus the node and the total UNIDs in the UNID database.

Dummy Node Allocation and Trading

All connected nodes may trade dummy UNIDs. This can be done usingnetwork services, such as routing algorithms. An example describing aspecific negation mechanism is described schematically in FIG. 4 towhich reference is now made, UNID handler 176 of node 178 negotiateswith UNID handler 180 of node 182, as well as with UNID handler 184 ofnode 186. The UNID handlers trade UNIDs based on QOS policy associatedwith each node. Thus QOS policies 188, 190 and 192 each provide input tothe respective UNID handlers 176, 180 and 184. The UNID handlers alsouse their respective UNID database to derive information regarding UNIDavailability allocation in the network, UNID DB 196 of node 178, UNID DB198 of node 182 and UNID DB 110 of node 186. As the assignments of UNIDare made, the DB of the nodes are updated and the WINIT function uses asinput updated information.

The implementation of dynamic assignment of UNID to nodes is related tothe dynamic bandwidth needs of a node with respect to the otherconnected nodes. The dynamics is typically related to changes in trafficdistribution in the network. For example ad hoc networks often rely onmulti hop routing to transmit packets among nodes, which usually employsrelay nodes. Thus a relay node may become heavily preoccupied withtransmitting packets among nodes, which requires more bandwidth toperform under such circumstances. The assignment of dummy UNIDs to realnodes may be static such that no trading takes place at all. In thiscase the advantageous use of a plurality of UNIDs in a node is intransmitting in more time slots (by average) with respect to other nodeswithout changing the channel bandwidth, if applied reflects specificneeds related to node priority. In case of dynamically distributingdummy UNIDs, this can be decided by a function involving all nodes or bya single node. The association of dummy UNIDs to real UNIDS can benegotiated between nodes in a multi-hop network using a negotiationapplication that sends and receives multi-hop messages using theservices of the routing algorithm. Thus, a node may send a messagerequesting more dummy nodes to be associated with, or else, relievingdummy nodes from association.

The UNID Database (DB)

In order to provide a more elaborate description of the features of theUNID database, reference is first made to FIG. 5. which is a schematicrepresentation of an exemplary UNID DB in Mynode. The list of UNIDs ofnetwork 220 includes four types of UNIDs, real UNIDs the assigned UNIDs,unassigned UNIDs and negotiated UNIDs. Any representation of the DB of anode is transient because of the constant changes potentially broughtabout by trading of UNIDs between nodes, removal of nodes or addition ofnodes. UNID_(n+1) and UNID_(n+2) are assigned to node k, UNID_(n−3) isassigned to mynode, UNID_(n) unassigned and UNID_(m) is negotiated.

The invention claimed is:
 1. A mobile and wireless ad hoc communicationsnetwork (MANET) having neither a central organizing node nor predefinedinfrastructure, using a time slotted channel and a distributed MACprotocol, wherein time slots (TSs) are assigned to specific nodes fortransmitting packets therein, each such node in said network comprising:a potentially interfering-node updatable database containing a limitednumber of unique node identification numbers (UNIDs), said limitednumber of unique nodes selected from the group consisting of real nodesand dummy nodes, and each UNID being uniquely addressable by a MAC; anda “which node is to transmit in the next TS” (WINIT) function forinvoking transmission from a respective UNID in each time slot (TS),wherein dummy nodes are assignable to and tradeable between the nodes ofsaid MANET, based on need for bandwidth of the real nodes, and whereineach of said nodes receives part of the available channel bandwidth inproportion to the ratio between the total UNIDs assigned to said nodeplus said node and the total UNIDs in said UNID database.
 2. The networkas in claim 1, wherein assignment of any of said dummy nodes with any ofsaid real nodes is preconfigured.
 3. The network as in claim 1, whereinassignment of any of said dummy nodes with any of said real nodes isnegotiable in a negotiation.
 4. The network as in claim 3, wherein thenegotiation of said assignment of any of said dummy nodes with any ofsaid real nodes is performed between dummy node handlers of respectivenodes.
 5. The network as in claim 1 further comprising a quality ofservice policy stored in connection with a UNID database forimplementing a quality of service of the respective node.